#include<vector>
using namespace std;
class Solution {
public:
    int findLength(vector<int>& nums1, vector<int>& nums2) {
        int m=nums1.size(),n=nums2.size();
        vector<vector<int>>dp(m+1,vector<int>(n+1));
        nums1.insert(nums1.begin(),-1),nums2.insert(nums2.begin(),-1);
        int ans=0;
        for(int i=1;i<=m;i++){
            for(int j=1;j<=n;j++){
                dp[i][j]=(nums1[i]==nums2[j]?dp[i-1][j-1]+1:0);
                ans=max(dp[i][j],ans);
            }
        }
        return ans;
    }
};